home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / java / beans / ReflectionUtils$Signature.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  822 b   |  55 lines

  1. package java.beans;
  2.  
  3. class ReflectionUtils$Signature {
  4.    private Class targetClass;
  5.    private String methodName;
  6.    private Class[] argClasses;
  7.    private volatile int hashCode = 0;
  8.  
  9.    public ReflectionUtils$Signature(Class var1, String var2, Class[] var3) {
  10.       this.targetClass = var1;
  11.       this.methodName = var2;
  12.       this.argClasses = var3;
  13.    }
  14.  
  15.    public boolean equals(Object var1) {
  16.       if (this == var1) {
  17.          return true;
  18.       } else {
  19.          ReflectionUtils$Signature var2 = (ReflectionUtils$Signature)var1;
  20.          if (this.targetClass != var2.targetClass) {
  21.             return false;
  22.          } else if (!this.methodName.equals(var2.methodName)) {
  23.             return false;
  24.          } else if (this.argClasses.length != var2.argClasses.length) {
  25.             return false;
  26.          } else {
  27.             for(int var3 = 0; var3 < this.argClasses.length; ++var3) {
  28.                if (this.argClasses[var3] != var2.argClasses[var3]) {
  29.                   return false;
  30.                }
  31.             }
  32.  
  33.             return true;
  34.          }
  35.       }
  36.    }
  37.  
  38.    public int hashCode() {
  39.       if (this.hashCode == 0) {
  40.          int var1 = 17;
  41.          var1 = 37 * var1 + this.targetClass.hashCode();
  42.          var1 = 37 * var1 + this.methodName.hashCode();
  43.          if (this.argClasses != null) {
  44.             for(int var2 = 0; var2 < this.argClasses.length; ++var2) {
  45.                var1 = 37 * var1 + (this.argClasses[var2] == null ? 0 : this.argClasses[var2].hashCode());
  46.             }
  47.          }
  48.  
  49.          this.hashCode = var1;
  50.       }
  51.  
  52.       return this.hashCode;
  53.    }
  54. }
  55.